BlueCielo Meridian Enterprise 2013 Developer's Guide | BlueCielo ECM Solutions

IAMExtensionPage interface

Each form must extend the IAMExtensionPage interface before it can be used as an interface extension property page or wizard page. The Extends statement must exist in the form’s declarations section as demonstrated in the following code sample. All Subs and Functions defined in this interface must be extended.

Option Explicit
' This Form can be used as a BC Meridian PropertyPage
Extends IAMExtensionPage

The interface extension will invoke these procedures when using the property or wizard page. The sequence of events during which these procedures are activated is described below.

  1. When an interface extension needs to display the properties for an object such as a document, it first initializes the property sheet control with the property or wizard pages that apply to the object.
  2. Each page is displayed as a tab in the property sheet control. The Caption property of the form is used as the caption of the tab. If the form’s Icon property contains an icon, this is also displayed in the caption of the tab.
  3. After the pages have been created, each page’s InitWithData method is called. This method can be used to load controls with the property values for the selected object if manual data binding is used.
  4. Next, the SetEditMode method is called. When a user clicks the Edit button with a property page visible, the pages are reinitialized and SetEditMode is called again. The only difference is the argument to SetEditMode, which will be PPEM_EDITMODE instead of PPEM_READONLY. This method should be used to enable or disable the controls for editing
  5. The last step of nitializing the pages occurs when the interface extension retrieves the Visible property of each page. Each page can use this procedure to determine if it needs to be displayed at runtime.
  6. When a user displays a page, the OnShow method is invoked. This method can be used to load controls on the form with the property values (manual data binding) for the selected object. This is most commonly done in the InitWithData method described above. But using the OnShow method instead delays processing until it is actually required by the user. Depending on the number of custom properties and the type of data, this can be a useful optimization.
  7. When the user clicks the OK or Apply buttons (Next or Finish, in the case of a wizard page) to save their changes, the interface extension will first check to see if all pages are ready to apply the changes. It will retrieve the CanApply property on each page. If any page returns False, such as a data validation failed, the operation is stopped and the pages remain in edit mode so that the user can correct the problem.
  8. When all pages return True, the ApplyChanges method is called to save the data. This method should be used to save the values on the form for the selected object to the database if manual data binding is used. After the changes are applied, the pages are reinitialized as described above.
  9. When the property page is closed or refreshed, the ReleaseData method is called. The form should use this method to clear any information that is specific to the selected object.

Note    After the ReleaseData call, the page may be used to display information for another object, using another transaction. Therefore, the page should release all references to Meridian Enterprise server objects in this procedure.

Related information

Required property page code

About manual vs. automatic data binding

Icon property

InitWithData method

SetEditMode method

Visible property

OnShow method

SetEditMode method

CanApply property

ApplyChanges method

ReleaseData method

IAMExtensionPage2 interface

Copyright © 2000-2013 BlueCielo ECM Solutions